#include "Components/ComponentFurnitureInventory.h"

namespace PocketSurvival
{
	uint32_t ComponentFurnitureInventory::slotsCount()
    {
        return 0;
    }
	void ComponentFurnitureInventory::setSlotValue(uint32_t slotIndex, int32_t cellValue, uint32_t valueCount)
    {
    }
	int32_t ComponentFurnitureInventory::getSlotValue(uint32_t slotIndex)
    {
        return 0;
    }
	uint32_t ComponentFurnitureInventory::getSlotCount(uint32_t slotIndex)
    {
        return 0;
    }
	void ComponentFurnitureInventory::onSlotChange(uint32_t slotIndex)
    {
    }
	uint32_t ComponentFurnitureInventory::getSlotCapacity(uint32_t slotIndex, int32_t cellValue)
    {
        return 0;
    }
	uint32_t ComponentFurnitureInventory::getSlotProcessCapacity(uint32_t slotIndex, int32_t cellValue)
    {
        return 0;
    }
	void ComponentFurnitureInventory::addSlotItems(uint32_t slotIndex, int32_t cellValue, uint32_t count)
    {
    }
	bool ComponentFurnitureInventory::addNetSlotItems(uint32_t slotIndex, int32_t cellValue, uint32_t count)
    {
        return false;
    }
	void ComponentFurnitureInventory::processSlotItems(IInventory *sourceInventory, uint32_t sourceSlotIndex, uint32_t slotIndex, int32_t cellValue, uint32_t count, uint32_t processCount, int32_t &outProcessedValue, uint32_t &outProcessedCount)
    {
    }
	uint32_t ComponentFurnitureInventory::removeSlotItems(uint32_t slotIndex, uint32_t count)
    {
        return 0;
    }
	uint32_t ComponentFurnitureInventory::removeNetSlotItems(uint32_t slotIndex, uint32_t count)
    {
        return 0;
    }
	void ComponentFurnitureInventory::dropAllItems(const Vector3 &position)
    {
    }
	void ComponentFurnitureInventory::dropSlotItems(uint32_t slotIndex, const Vector3 &position, const Vector3 &velocity)
    {
    }


    static const std::string componentName = "FurnitureInventory";
    const std::string &ComponentFurnitureInventory::getName() const
    {
        return componentName;
    }
    const std::string &ComponentFurnitureInventory::GetName()
    {
        return componentName;
    }
    void ComponentFurnitureInventory::load(const nlohmann::json &jsonData)
    {

    }
    void ComponentFurnitureInventory::save(nlohmann::json &jsonData)
    {
        jsonData["FurnitureSet"] = "";
    }
    void ComponentFurnitureInventory::saveToMsgJson(nlohmann::json &jsonData)
    {
        MSG_VALUE_SET(jsonData, "Id", "int", id);
        MSG_VALUE_SET(jsonData, "FurnitureSet", "string", "");
    }
} // namespace PocketSurvival